其他
产品力?概念包装?急功近利?中美开源差距究竟在哪
国家宏观政策环境
谭中意:国家的“十四五规划”高屋建瓴地规划出了国家在数字化转型中要做的事情,国家在数字化转型投入资源越来越多,国家能在政策层面看重开源,值得整个开源界鼓舞。 而由人民银行等金融领域机构发布的《意见》,则是受到国家大层面规划的影响,算是细分行业针对“十四五规划”做出的本行业规划。我觉得是非常好的现象,体现了我们国家集中力量做大事的特点。 金融行业是国内数字化建设的主力军,是一个最好的数字化实践场。因为金融业有丰富的人力、经济资源,有广阔的市场空间,并处于国家的强监管之下。金融行业是最早在数字化转型过程中采用开源软件的行业之一,一直以来都不缺乏在开源上的实践,但缺乏来自央行层面的明确支持。《意见》的出台一方面给行业吃了一颗定心丸,鼓励大家进一步使用开源软件;第二方面,也对行业在使用开源软件时提出了一些明确的要求,即需要更加注重开源软件的安全合规等问题;第三个方面,《意见》的出台也期盼金融行业能够广泛地参与到开源社区的建设,在完成自身业务需求的同时,能带动中国开源软件行业一起成长。 目前国内金融行业中在开源社区的参与度方面,微众银行是走在前列的,微众旗下已有数个项目捐赠到 Apache 软件基金会。此外,中国工商银行、招商银行等企业也拥有业内领先的技术实力,在开源领域投入的技术人力也处于领先。 结合我自己在开源 AI 技术公司第四范式接触到的客户经验,我注意到银行大客户越来越强调建立自主可控的金融科技团队,关键业务越来越倾向于用开源的产品来进行自研和部署,不再满足于购买一套商业公司提供的业务来帮助建立 IT 系统。 我觉得这是一个非常好的趋势。《意见》是对金融业技术化发展很好的指引。
黄东旭:第一点,确实如谭老师所说,金融行业有着丰富的财力,这首先对所有有志于做开源的公司来说都是一个利好。 第二点,从我们自己的创业经历来说,我们明显地感受到了近年来用户态度的转变。最早我们在向客户宣传我们的定位是做开源数据库的时候,很多金融业客户的观念是认为开源产品是没法用的,开源意味着不安全或不靠谱。 慢慢地,经过我们自身的努力和近两年行业的发展,特别是很多开源产业的调查报告出现之后,已经不再有金融行业客户对开源产品的稳定性有所怀疑,态度上完全转变,这对于开源从业者来说是一种利好。 但我觉得我们面临的挑战仍然很大。一方面,特别是对于一些基础软件来说,在国家政策出来以后,很多用户的积极性特别高,纷纷表示要在核心业务上与开源公司合作,我担心这会造成揠苗助长的问题。业内非常成熟的数据库公司 Oracle 已经积累了几十年的产品经验,而国内很多开源软件公司还处于创业公司阶段,大家一定要冷静,对自己有清醒的认知,该做什么客户,该做什么场景,都要想好,保持冷静。
红薯:对我个人来说,国家层面对开源的支持是一件让我非常兴奋的事情,有一种摸爬滚打了很多年,终于看到曙光的感觉,因为在这之前我们会觉得开源一直是一件很草根的事情。 我们在开源圈子见证了行业十几年的发展,如果说此前的繁荣仅仅是 IT 圈内的趋势,那从 2020 年开始发生一些质的变化,那就是政府开始认真地从国家高度思考和发展开源,同时也做了很多扎实的工作。比如成立开源基金会,比如基于 Gitee 建立国家代码托管平台等。 国家的发声让开源不仅仅局限于 IT 圈子,也让更多圈外人士关注开源,这对所有开源从业者来说都是一件很好的事情。
中国开源发展
吴晟:我从几个方面来聊一下我的看法。 首先从 Apache 开源软件基金会的角度来说,这是一个比较好的现象。来自中国的开发者数量提高,整个 2021 年进入 ASF 孵化器的项目都是中国的公司或者个人捐赠的。从项目的活跃度来看,中国捐赠给 ASF 的十几个项目,在社区活跃度、发版周期来看都比较健康,这些从 GitHub 代码托管平台的数据也能得到验证。 而谈到中国开源对世界的影响力,我认为大家还是应该冷静看待。从全球范围来看,开源实际上是一个长期的事情,很多在世界范围内有着巨大影响力的开源项目都有着十年以上的历史。而中国绝大部分开源项目和开发者都比较年轻,缺乏在一个长期过程中对项目进行长时间迭代的经历。 我们可以看到,近年来在国内无论是刚才提到的各大头部公司,还是一些相对比较火的项目,都还是比较年轻的,超过 5 年的项目在中国就已经非常少了。所以说我们的项目在国际上的影响力仍然十分有限。 但从另外一个角度来看,我们国内的厂商开始慢慢参考国外成熟开源社区运作的经验,慢慢培养开源相关人才,虽然仍需要很长的时间,但确实是走在一条正确的路上。我也希望国内今后想要参与开源的人或者参与开源的公司能够保持冷静,我们应该意识到绝大部分的开源并不是和商业盈利直接划等号的,不是说开源了就一定能挣钱,或者开源了就一定能吸引很多用户。
吴晟:结合我在硅谷的经验,从我的理解来说,中美最大的区别是是否相信项目的前瞻性,以及是否能给项目足够的耐心。我们在国内经常讲究的是快速迭代,或者是要求达到了一个所谓的里程碑,而不是一个远景的方向,这会造成国内参与开源的人比较急功近利。 而在美国,实际上绝大部分参与开源的厂商会更专注于建立整个集成的生态系统,或者说专注于把自己的产品在未来打造成业内的事实标准,这些往往都是长线的、很难被量化的工作。这背后映射出来的,实际上是开源不仅需要很多来自的基金会、公司的长期支持,还需要很多优秀的资深开发者长时间地努力。 我想今天在座的各位老师都更愿意说自己还是一个工程师,一个开发者,其实也印证了这点。开源本质上有着非常强的个人英雄主义色彩,所以它需要很多优秀的个人开发者很长期的来做这件事,在一个长线的过程中去参与项目的发展方向。开源不仅需要物质层面的投入,还需要一个非常有经验的开发者长时间地去做研发的工作,来带领大家在一个很好的方向上做 5 年、10 年、20 年的迭代。
黄东旭:我参考了很多海外的开源项目,老实说我觉得中美文化特别大的区别有两点。 第一点就是他们很会设计一些新的概念。比如一些已有的技术,经过概念的包装,就会显得高大上起来,然后整个行业就会跟上去学习。而国内缺乏的就是这种将“远景”提出来然后感染大家,引领全球技术概念的人。什么时候中国人能够真正用我们的开源项目去引领一些全球都认可的概念,才算是掌握了真正的影响力和话语权。 第二点是产品经理其实特别重要。事实上,目前中国大多数的开源项目仍然是以开发者为导向的,“工程师味道”特别浓。而国外比较成熟的开源项目和社区,我们会发现他们产品的设计都非常强。这点我之前有分析过比较深层次的原因,是因为国内开源软件的应用场要解决的问题实在是太极端了。 在国内,很多开源软件最初就是为业务而生的“救命型产品”。比如 TiDB 最早期的用户,就是实在受不了业务上的分表,把 TiDB 当做救命型的产品来使用。 而海外往往没有中国这么极端的业务量,通俗来说就是已经内卷到了后期,开始“卷”易用性、UI 设计等用户体验层次的东西。而这些恰恰是中国开源软件仍然欠缺的。
谭中意:刚才东旭和吴晟都说了我们的开源开发者相对国外开发者的差距,这些问题实际上不仅是在开源领域,在其他技术领域也同样存在。我觉得这与我们整体的技术发展时间和沉淀不够相关。 我们国内高校或培训机构对开发者的培养相对来说离真实的工业场景比较远。所以我觉得我们需要做的事情有两个方面。第一是鼓励更多的工程师站得高一点,看得远一点。第二就是在一些教育场景,我们看看如何能够利用开源软件帮助学生在进入职场的时候离生产场景更近一点,同时能针对某些拔尖的学生,更好地锻炼出他们的设计能力,而不仅仅只是编码能力。这个其实也是现在国际上几大开源基金会都在做的事情。
开源产业趋势
黄东旭:第一个观点是过去我们在说开源的商业模式时,基本上都是类似红帽公司的模式,即做企业级市场,为企业提供传统的数据库、IT 系统等 ToB 服务。但现在我们可以明显感受到,开源的商业化逐渐从 ToB 变成 ToD,即面向开发者的模式。找到一个面向开发者的应用场景,加上 SaaS,加上云服务等,可以说现在开源的商业化模式道路已经越来越多。 第二点是这其实给国内开源公司带来了一些挑战。如之前所说,在中国有产品经理基因的优秀开源创业公司还是太少。很多中国开源创企可能有很好的技术,但在产品、推广、国际化等方面的综合能力,相比国外公司差距还是很大。开源商业的国际化其实是全方位的竞争,而国外开源企业在竞争中的优势正在加速扩大。 我相信开源其实是没有国界的,哪怕仅仅是面向中国市场的开源产品,也要在这个领域做到全球第一,才能更好地去做本土化。
吴晟:在硅谷或者说在北美,开源社区更多是作为连接用户的角色存在,商业本身其实在于和社区版完全不同级别的商业产品所提供的解决方案。 所以一般我们不太会说“因为你的东西开源了,那你就能更好地获得用户的信任”,因为北美市场其实不太关心你的软件产品是不是开源的。其实我们从最近 IPO 的一些案例也能看到,这些成功上市的公司产品既有核心开源的,也有完全商业化的包装模式。 开源只是一种很好地连接不同企业,不同国家,不同地区用户的手段。我们还是要站在商业的角度去看待一个产品,不能说开源成功就代表着商业的成功。
开源治理与安全挑战
吴晟:其实不管你的软件是开源还是闭源的,底层的基础设施使用开源软件几乎是一个板上钉钉的事实,开源软件已经无处不在。所以本质上这并不是一个简简单单的开源软件或者开源组件是不是安全的问题。开源已经是一种事实上的全球软件构建模式,它必须是一个全球通力合作的模式,所以我们得去接受它可能会存在漏洞这个事实,并且需要投入更多的资源、更多的精力去解决安全问题。 具体到 Apache Log4j2 存在 Log4Shell 漏洞这个问题。大家知道 Apache 软件基金会旗下共有 300 多个项目,基金会成立 20 多年来一直以低成本运作,完全靠志愿者驱动,基金会不会给任何人任何酬劳。 所以任何一个项目在确保软件供应链安全的时候,唯一的可能是投入更多的工程师对上游所依赖的每一级的库都或多或少的参与,如果每一个对有利益诉求的人都在向前去追溯,向前去参与,那么才能保证这个软件本身的安全,以及把这个软件本身的安全推动能够做得更好,能够及时的去修补它的漏洞。 事实上 Log4Shell 这个漏洞存在了很长时间,发现的也比较偶然,对安全漏洞评级也是很复杂的技术难题,没有办法一劳永逸。大家需要更客观地认识这是现代软件需要面临的挑战,而不仅仅是开源软件的问题。
红薯:首先这个 GPL 案件是一件非常好的事情,现实中人们对开源协议的关注还是太少,往往出了问题才会去研究,需要更多的案子来引起大家对开源协议的重视。 关于 Log4j2 存在安全漏洞的事件,这个项目本身影响力太大,从 Gitee 上的情况来看,最近很多软件版本更新非常频繁,也是因为大家都在更新 Log4j 的安全漏洞补丁。 从 Gitee 的角度来看,我们做开源代码托管平台,考虑的角度和具体做某个开源项目的团队不太一样。我们关注的是整个社区普遍的一些情况,我们一直在针对国内开源领域存在的各种问题,比如协议侵权、安全漏洞、个人开发者做出一些不理智的操作等,我们想要真正做一些事,来降低这些事情发生的比例。 比如前两年我们做了开源许可证的强提醒功能,很多开发者会开始关注我应该选什么样的许可证。在以前大家可能没有这样的意识。另外我们希望把开源贡献者协议植入平台,来影响更多开发者来注意开源作者应尽的责任、义务等。我觉得这些都是我们平台应该来做的一些事情。
往期精彩回顾